package com.apobates.jforum2.threads.stub.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 某话题统计信息
 */
public class ThreadsStatsVo implements Serializable{
    //话题的ID
    private long threads;
    //卷的ID
    private int volumes;
    //版块的ID
    private long board;
    //回复数
    private long replies;
    //查看数
    private long displaies;
    //收藏数
    private long favorites;
    //点赞的数
    private long likes;
    //最近回复的作者ID
    private long recentReplyMember;
    //最近回复的作者帐号
    private String recentReplyNickname;
    //最近回复的日期
    @JsonSerialize(using = LocalDateTimeSerializer.class)
    @JsonDeserialize(using = LocalDateTimeDeserializer.class)
    @JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss")
    private LocalDateTime recentReplyDate;
    //统计更新的时间
    @JsonSerialize(using = LocalDateTimeSerializer.class)
    @JsonDeserialize(using = LocalDateTimeDeserializer.class)
    @JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss")
    private LocalDateTime updateDate;
    //最近回复的回复ID
    private long recentReply;
    //版块的访问连接
    private String boardLink;

    public ThreadsStatsVo() {
    }

    public long getThreads() {
        return threads;
    }

    public void setThreads(long threads) {
        this.threads = threads;
    }

    public int getVolumes() {
        return volumes;
    }

    public void setVolumes(int volumes) {
        this.volumes = volumes;
    }

    public long getBoard() {
        return board;
    }

    public void setBoard(long board) {
        this.board = board;
    }

    public long getReplies() {
        return replies;
    }

    public void setReplies(long replies) {
        this.replies = replies;
    }

    public long getDisplaies() {
        return displaies;
    }

    public void setDisplaies(long displaies) {
        this.displaies = displaies;
    }

    public long getFavorites() {
        return favorites;
    }

    public void setFavorites(long favorites) {
        this.favorites = favorites;
    }

    public long getLikes() {
        return likes;
    }

    public void setLikes(long likes) {
        this.likes = likes;
    }

    public long getRecentReplyMember() {
        return recentReplyMember;
    }

    public void setRecentReplyMember(long recentReplyMember) {
        this.recentReplyMember = recentReplyMember;
    }

    public String getRecentReplyNickname() {
        return recentReplyNickname;
    }

    public void setRecentReplyNickname(String recentReplyNickname) {
        this.recentReplyNickname = recentReplyNickname;
    }

    public LocalDateTime getRecentReplyDate() {
        return recentReplyDate;
    }

    public void setRecentReplyDate(LocalDateTime recentReplyDate) {
        this.recentReplyDate = recentReplyDate;
    }

    public LocalDateTime getUpdateDate() {
        return updateDate;
    }

    public void setUpdateDate(LocalDateTime updateDate) {
        this.updateDate = updateDate;
    }

    public long getRecentReply() {
        return recentReply;
    }

    public void setRecentReply(long recentReply) {
        this.recentReply = recentReply;
    }

    public String getBoardLink() {
        return boardLink;
    }

    public void setBoardLink(String boardLink) {
        this.boardLink = boardLink;
    }
}